<?php

namespace core\test;
use core\handler\Autoload;

use core\utils\CurlUtil;
use PHPUnit\Framework\TestCase;

class PHPUnitTest extends TestCase {
    public function __construct(?string $name = null, array $data = [], string $dataName = '')
    {

        require_once __DIR__."/../handler/Autoload.php";
        $vendorAutoloadDir = __DIR__ . "/../../vendor/autoload.php";
        require_once $vendorAutoloadDir;

        // 注册这个框架的自动加载
        Autoload::register();

        parent::__construct($name, $data, $dataName);
    }

    /**
     * 发起 POST 形式的请求
     * @param string $url   请求的url
     * @param array $param  请求的参数
     * @param array $cookie 请求的cookie
     * @param array $option 请求的CURLOPT
     * @return string       请求返回的内容
     */
    public function post(string $url, array $param = [], array $cookie = [], array $option = []) :string {
        return CurlUtil::post($url, $param, $cookie, $option);
    }
    /**
     * 发起 GET 形式的请求
     * @param string $url   请求的url
     * @param array $param  请求的参数
     * @param array $cookie 请求的cookie
     * @param array $option 请求的CURLOPT
     * @return string       请求返回的内容
     */
    public function get(string $url, array $param = [], array $cookie = [], array $option = []) :string {
        return CurlUtil::get($url, $param, $cookie, $option);
    }
}